import {createStore} from 'vuex'

export default createStore({
  // 存放变量：可以获取，但不能修改
  // 获取：vuex.state['loginFlag']
  state: {
    loginFlag: !!sessionStorage.getItem('token')
  },
  // 开发同步方法：修改 state 区的变量
  // 修改：vuex.commit('setLoginFlag', false)
  mutations: {
    setLoginFlag: (state, loginFlag) => state['loginFlag'] = loginFlag
  },
  // 开发同步或异步方法
  // vuex.dispatch('setLoginFlag', false)
  actions: {
    setLoginFlag: async (context, loginFlag) => await context.commit('setLoginFlag', loginFlag)
  },
  // 分模块
  modules: {},
  // 存放获取方案
  getters: {},
})
